-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
Rollup of 9 pull requests #151778
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 9 pull requests #151778
Conversation
This tries to clarify a few things regarding fmt syntax: - The comment on `Parser::word` seems to be wrong, as that underscore-prefixed words are just fine. This was changed in rust-lang#66847. - I struggled to follow the description of the width argument. It referred to a "second argument", but I don't know what second argument it is referring to (which is the first?). Either way, I rewrote the paragraph to try to be a little more explicit, and to use shorter sentences. - The description of the precision argument wasn't really clear about the distinction of an Nth argument and a named argument. I added a sentence to try to emphasize the difference. - `IDENTIFIER_OR_KEYWORD` was changed recently in rust-lang/reference#2049 to include bare `_`. But fmt named arguments are not allowed to be a bare `_`.
Remove `skip-filecheck` and add FileCheck directives to verify that GVN propagates the constant `false` and eliminates the match entirely. The test now verifies: - The debug info shows `x` as `const false` (constant propagation) - No `switchInt` remains (match elimination) - The function body is just `return` (dead code elimination)
This was refactored incorrectly at some point and would run `cargo check` even for `x fix`.
…ait-variant, r=oli-obk Support trait objects in type info reflection Tracking issue: rust-lang#146922 Adds type_info support for trait object types by introducing a DynTrait variant ~~I can't seem to get it to work correctly with `dyn for<'a> Foo<'a>`, though it works fine for normal `dyn Foo` trait objects~~ r? @oli-obk
…-obk offload: move (un)register lib into global_ctors Right now we initialize the openmp/offload runtime before every single offload call, and tear it down directly afterwards. What we should rather do is initialize it once in the binary startup code, and tear it down at the end of the binary execution. Here I implement these changes. Together, our generated IR has a lot less usage of globals, which in turn simplifies the refactoring in rust-lang#150683, where I introduce a new variant of our offload intrinsic. r? oli-obk
Add some clarifications and fixes for fmt syntax This tries to clarify a few things regarding fmt syntax: - The comment on `Parser::word` seems to be wrong, as that underscore-prefixed words are just fine. This was changed in rust-lang#66847. - I struggled to follow the description of the width argument. It referred to a "second argument", but I don't know what second argument it is referring to (which is the first?). Either way, I rewrote the paragraph to try to be a little more explicit, and to use shorter sentences. - The description of the precision argument wasn't really clear about the distinction of an Nth argument and a named argument. I added a sentence to try to emphasize the difference. - `IDENTIFIER_OR_KEYWORD` was changed recently in rust-lang/reference#2049 to include bare `_`. But fmt named arguments are not allowed to be a bare `_`.
compiler: Rename several types/traits for per-query vtables - Follow-up to rust-lang#151577 --- This is another round of renaming for some subtle types and traits used by the query system, to hopefully make them easier to understand. Key renames: - struct `DynamicQuery` → `QueryVTable` (the actual vtable-like structure) - struct `DynamicQueries` → `PerQueryVTables` (holds a vtable for each query) - trait `QueryConfig` → `QueryDispatcher` - (used by generic functions in `rustc_query_system` to interact with query vtables) - struct `DynamicConfig` → `SemiDynamicQueryDispatcher` - (implements `QueryDispatcher` by combining a vtable with some compile-time boolean flags for improved perf) - trait `QueryConfigRestored` → `UnerasedQueryDispatcher` - (provides a `QueryDispatcher` while also remembering the query's unerased value type; allows some per-query code to be moved out of macros and into generic functions) This was trickier than `DepKindVTable`, because there are more types and traits involved, and it's harder to come up with distinctive and useful names for all of them. There should be no change to compiler behaviour. r? Kivooeo (or compiler)
Add `extern crate core` to diagnostic tests We do this to solve the `failed to resolve: you might be missing crate core` messages that were previously visible in the stderr. We also split off `subdiagnostic-derive-2` from the main `subdiagnostic-derive`, because the error for this test is now generated post-expansion.
…eyouxu Update `askama` version to `0.15.2` Link to new release is [here](https://github.com/askama-rs/askama/releases/tag/v0.15.2). Basically improves a few things and remove some warnings. r? @jieyouxu
…est, r=GuillaumeGomez Update `browser-ui-test` version to `0.23.3` Should fix rust-lang#151704 (comment). Should help with rust-lang#93784. r? ghost
…-match, r=dianqk Add FileCheck annotations to simplify_match.rs Remove `skip-filecheck` and add FileCheck directives to verify that GVN propagates the constant `false` and eliminates the match entirely. The test now verifies: - The debug info shows `x` as `const false` (constant propagation) - No `switchInt` remains (match elimination) - The function body is just `return` (dead code elimination) Part of rust-lang#116971. r? cjgillot
Fix `x fix`, again This was refactored incorrectly at some point and would run `cargo check` even for `x fix`.
This comment has been minimized.
This comment has been minimized.
|
📌 Perf builds for each rolled up PR:
previous master: 466ea4e6c3 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 466ea4e (parent) -> a234ae6 (this PR) Test differencesShow 75 test diffsStage 1
Stage 2
Additionally, 69 doctest diffs were found. These are ignored, as they are noisy. Job group index
Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard a234ae6b6538d41de6886cb7742d062ad832b0e3 --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (a234ae6): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -1.7%, secondary 0.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary 3.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (secondary 0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 476.499s -> 476.908s (0.09%) |
Successful merges:
extern crate coreto diagnostic tests #151738 (Addextern crate coreto diagnostic tests)askamaversion to0.15.2#151747 (Updateaskamaversion to0.15.2)browser-ui-testversion to0.23.3#151759 (Updatebrowser-ui-testversion to0.23.3)x fix, again #151766 (Fixx fix, again)r? @ghost
Create a similar rollup